<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>rgb2ycrcb: Main Page</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="HTML_custom.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xlogo_bg.gif"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">rgb2ycrcb
   </div>
   <div id="projectbrief">Xilinx SDK Drivers API Documentation</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',false,false,'search.php','Search');
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('index.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<div class="title">rgb2ycrcb Documentation</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>This header file contains identifiers and register-level driver functions (or macros), range macros, structure typedefs that can be used to access the Xilinx Rgb2YCrCb core instance. The RGB to YCrCb Color-Space Convertor core is a simplified 3x3 matrix multiplier converts three input color samples to three output samples in a single clock cycle. The core supports four common format conversions as well as a custom mode that allows for a user-defined transform. The core is capable of a maximum resolution of 7680 columns by 7680 rows with 8, 10, 12, or 16 bits per pixel.</p>
<p><b>Initialization &amp; Configuration</b></p>
<p>The device driver enables higher layer software (e.g., an application) to communicate to the RGB2YCRCB core.</p>
<p><a class="el" href="group__rgb2ycrcb__v7__0.html#ga584a818bca95b80de513294519c54ee2" title="This function initializes the Rgb2YCrCb core. ">XRgb2YCrCb_CfgInitialize()</a> API is used to initialize the RGB2YCRCB core. The user needs to first call the <a class="el" href="group__rgb2ycrcb__v7__0.html#ga8267423a2342650df224b86fe8c423cd" title="This function returns a reference to an XRgb2YCrCb_Config structure based on the unique core id...">XRgb2YCrCb_LookupConfig()</a> API which returns the Configuration structure pointer which is passed as a parameter to the <a class="el" href="group__rgb2ycrcb__v7__0.html#ga584a818bca95b80de513294519c54ee2" title="This function initializes the Rgb2YCrCb core. ">XRgb2YCrCb_CfgInitialize()</a> API.</p>
<p><b> Interrupts </b></p>
<p>The driver provides an interrupt handler XRgb2YCrCb_IntrHandler for handling the interrupt from the RGB2YCRCB core. The users of this driver have to register this handler with the interrupt system and provide the callback functions by using XRgb2YCrCb_SetCallBack API.</p>
<p><b> Virtual Memory </b></p>
<p>This driver supports Virtual Memory. The RTOS is responsible for calculating the correct device base address in Virtual Memory space.</p>
<p><b> Threads </b></p>
<p>This driver is not thread safe. Any needs for threads or thread mutual exclusion must be satisfied by the layer above this driver.</p>
<p><b> Asserts </b></p>
<p>Asserts are used within all Xilinx drivers to enforce constraints on argument values. Asserts can be turned off on a system-wide basis by defining, at compile time, the NDEBUG identifier. By default, asserts are turned on and it is recommended that users leave asserts on during development.</p>
<p><b> Building the driver </b></p>
<p>The <a class="el" href="struct_x_rgb2_y_cr_cb.html" title="The XRgb2YCrCb driver instance data structure. ">XRgb2YCrCb</a> driver is composed of several source files. This allows the user to build and link only those parts of the driver that are necessary.</p>
<pre>
  MODIFICATION HISTORY:</pre><pre>  Ver   Who    Date     Changes
<hr/>

  5.00a tb     02/27/12 Updated for RGB2YCRCB V5.00.a
  5.01a bao    12/28/12 Converted from xio.h to xil_io.h, translating basic
                        types, MB cache functions, exceptions and assertions
                        to xil_io format.
  6.0   adk    19/12/13 Updated as per the New Tcl API's.
  7.0   adk    01/07/14 Changed the file name from "rgb2ycrcb.h" to
                        "xrgb2ycrcb.h".
                        Moved register offsets and bit definitions from
                        rgb2ycrcb.h file to <a class="el" href="xrgb2ycrcb__hw_8h.html">xrgb2ycrcb_hw.h</a> file.</pre><pre>                        Removed RGB_TIMING_STATUS register offset because this
                        register is not present in latest product guide.</pre><pre>                        Removed following function macros:
                        RGB_Enable, RGB_Disable, RGB_RegUpdateEnable,
                        RGB_RegUpdateDisable, RGB_Reset, RGB_ClearReset,
                        RGB_AutoSyncReset.</pre><pre>                        Removed following functions:
                        RGB_select_standard, RGB_coefficient_translation,
                        RGB_set_coefficients, RGB_get_coefficients.</pre><pre>                        Added following handler types as enum:
                        XRGB_HANDLER_PROCSTART, XRGB_HANDLER_FRAMEDONE,
                        XRGB_HANDLER_ERROR.</pre><pre>                        Added following standard types as enum:
                        XRGB_STANDARD_ITU_601_SD, XRGB_STANDARD_ITU_709_NTSC,
                        XRGB_STANDARD_ITU_709_PAL, XRGB_STANDARD_YUV,
                        XRGB_STANDARD_CUSTOM.</pre><pre>                        Added following output ranges as enum:
                        XRGB_TV_16_TO_240, XRGB_STUDIO_16_TO_235,
                        XRGB_GRAPHICS_0_TO_255.</pre><pre>                        Added range macros for ActiveSize, YMAX, YMIN, YOFFSET,
                        CBMAX, CBMIN, CBOFFSET, CRMAX, CRMIN, CROFFSET
                        registers.</pre><pre>                        Added following function macros:
                        XRgb2YCrCb_IntrEnable, XRgb2YCrCb_SyncReset,
                        XRgb2YCrCb_IntrDisable, XRgb2YCrCb_StatusGetPending,
                        XRgb2YCrCb_IntrGetPending, XRgb2YCrCb_IntrClear,
                        XRgb2YCrCb_RegUpdateEnable,
                        XRgb2YCrCb_RegUpdateDisable, XRgb2YCrCb_Reset,
                        XRgb2YCrCb_Enable, XRgb2YCrCb_Disable,
                        XRgb2YCrCb_Start, XRgb2YCrCb_Stop.</pre><pre>                        Added core and configuration structure.
                        Renamed rgb_coef_inputs -&gt; <a class="el" href="struct_x_rgb2_y_cr_cb___coef___inputs.html" title="Rgb2YCrCb input coefficient. ">XRgb2YCrCb_Coef_Inputs</a> and
                        rgb_coef_outputs - &gt; <a class="el" href="struct_x_rgb2_y_cr_cb___coef___outputs.html" title="Rgb2YCrCb output coefficient. ">XRgb2YCrCb_Coef_Outputs</a>.</pre><pre>                        Added callback functions typedef.</pre><pre>                        Implemented XRgb2YCrCb_LookupConfig in
                        <a class="el" href="xrgb2ycrcb__sinit_8c.html">xrgb2ycrcb_sinit.c</a>
                        Implemented XRgb2YCrCb_SelfTest in
                        <a class="el" href="xrgb2ycrcb__selftest_8c.html">xrgb2ycrcb_selftest.c</a>
                        Implemented XRgb2YCrCb_IntrHandler,
                        XRgb2YCrCb_SetCallBack in <a class="el" href="xrgb2ycrcb__intr_8c.html">xrgb2ycrcb_intr.c</a>.</pre><pre>                        Implemented following functions in <a class="el" href="xrgb2ycrcb_8c.html">xrgb2ycrcb.c</a>:
                        XRgb2YCrCb_CfgInitialize, XRgb2YCrCb_EnableDbgByPass,
                        XRgb2YCrCb_IsDbgByPassEnabled,
                        XRgb2YCrCb_DisableDbgBypass,
                        XRgb2YCrCb_EnableDbgTestPattern,
                        XRgb2YCrCb_IsDbgTestPatternEnabled,
                        XRgb2YCrCb_DisableDbgTestPattern,
                        XRgb2YCrCb_GetVersion, XRgb2YCrCb_GetDbgFrameCount,
                        XRgb2YCrCb_GetDbgLineCount,
                        XRgb2YCrCb_GetDbgPixelCount, XRgb2YCrCb_Setup,
                        XRgb2YCrCb_SetActiveSize, XRgb2YCrCb_GetActiveSize,
                        XRgb2YCrCb_SetYMax, XRgb2YCrCb_GetYMax,
                        XRgb2YCrCb_SetYMin, XRgb2YCrCb_GetYMin,
                        XRgb2YCrCb_SetCbMax, XRgb2YCrCb_GetCbMax,
                        XRgb2YCrCb_SetCbMin, XRgb2YCrCb_GetCbMin,
                        XRgb2YCrCb_SetCrMax, XRgb2YCrCb_GetCrMax,
                        XRgb2YCrCb_SetCrMin, XRgb2YCrCb_GetCrMin,
                        XRgb2YCrCb_SetYOffset, XRgb2YCrCb_GetYOffset,
                        XRgb2YCrCb_SetCbOffset, XRgb2YCrCb_GetCbOffset,
                        XRgb2YCrCb_SetCrOffset, XRgb2YCrCb_GetCrOffset,
                        XRgb2YCrCb_SetCoefs, XRgb2YCrCb_GetCoefs,
                        XRgb2YCrCb_Select_Standard,
                        XRgb2YCrCb_Coefficient_Translation,
                        XRgb2YCrCb_Select_OutputRange.
  7.1   ms     01/16/17 Updated the parameter naming from
                        XPAR_RGB2YCRCB_NUM_INSTANCES  to
                        XPAR_XRGB2YCRCB_NUM_INSTANCES to avoid compilation
                        failure for XPAR_RGB2YCRCB_NUM_INSTANCES as the
                        tools are generating XPAR_XRGB2YCRCB_NUM_INSTANCES
                        in the generated xrgb2ycrcb_g.c for fixing MISRA-C
                        files. This is a fix for CR-966099 based on the
                        update in the tools.
        ms     03/17/17 Added readme.txt file in examples folder for doxygen
                        generation.
*</pre> </div></div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Copyright &copy; 2015 Xilinx Inc. All rights reserved.</li>
  </ul>
</div>
</body>
</html>
